package org.hilo.boot.core.shiro;

import java.io.Serializable;

import org.apache.shiro.session.Session;

/**
 * 操作缓存，注意控制 缓存的失效时间
 * 
 * @author zollty
 * @since 2017-07-02
 */
public interface SessionCacheService {
    /**
     * 保存会话
     * @param session
     */
    void saveSession(Session session);

    /**
     * 保存会话
     * @param session
     */
    void updateSession(Session session);

    /**
     * 刷新缓存重新计算过期时间
     * @param sessionId
     */
    void refreshSession(Session session);

    /**
     * 删除会话
     * @param sessionId
     */
    void deleteSession(Serializable sessionId);

    /**
     * 获取会话
     * @param sessionId
     * @return
     */
    Session getSession(Serializable sessionId);

//    /**
//     * 获取所会话
//     * @return
//     */
//    Collection<Session> getAllSessions();
}
